"use client";

import * as React from "react";

import { useRandomIdSeed } from "../../hooks/useRandomId";
import IllustrationWrapper from "./IllustrationWrapper";
import type { Props } from "../types";

const SmartPassV2 = ({ primary, secondary, ...props }: Props) => {
  const randomId = useRandomIdSeed();
  const randomLinear = randomId("linear1");
  const randomLinear2 = randomId("linear2");
  const randomLinear3 = randomId("linear3");

  return (
    <IllustrationWrapper {...props} viewBox="0 0 2200 1300">
      <g>
        <path
          d="M1156.7 648.74L1118.77 667.21L1061.26 639.03L1118.77 600.8L1156.7 648.74Z"
          fill="#EDEDED"
        />
        <path
          d="M1118.77 252.59L937.72 162.86L976.47 143.38L1156.7 233.28L1118.77 252.59Z"
          fill="#E8EDF1"
        />
        <path
          d="M1126.93 663.24L1129.64 247.05L1118.77 252.59L1085.71 236.18L937.72 162.86L933.91 573.76L1118.77 667.3L1126.93 663.24Z"
          fill="#D8E1E8"
        />
        <path d="M1118.77 667.3V252.59L1156.7 233.28V648.74L1118.77 667.3Z" fill="#CAD5DF" />
        <path
          d="M2025 1160.04L818.54 562.63L885.25 523.06L553.67 516.07L587.62 699.59L662.83 654.98L1868.35 1252.44L2025 1160.04Z"
          fill={`url(#${randomLinear})`}
        />
        <path
          opacity="0.3"
          fillRule="evenodd"
          clipRule="evenodd"
          d="M1990.93 1050.13L1948.62 1068.13L1118.9 667.3L1156.83 648.74L1990.93 1050.13Z"
          fill={`url(#${randomLinear2})`}
        />
        <g opacity="0.5">
          <g opacity="0.5">
            <path
              opacity="0.5"
              d="M257.49 564.6L1633.34 1243.95L1564.1 1278.36L172.83 591.14L257.49 564.6Z"
              fill={`url(#${randomLinear3})`}
            />
          </g>
        </g>
        <path
          d="M1347.2 964.33V1249.44C1347.2 1250.9 1348.31 1252.35 1350.53 1253.44C1353.06 1254.53 1355.78 1255.09 1358.53 1255.09C1361.28 1255.09 1364 1254.53 1366.53 1253.44C1368.75 1252.33 1369.86 1250.88 1369.86 1249.44V964.33H1347.2Z"
          fill="#E8E8E8"
        />
        <path
          d="M1358.55 970.01C1364.82 970.01 1369.9 967.467 1369.9 964.33C1369.9 961.193 1364.82 958.65 1358.55 958.65C1352.28 958.65 1347.2 961.193 1347.2 964.33C1347.2 967.467 1352.28 970.01 1358.55 970.01Z"
          fill="#F0F0F0"
        />
        <path
          d="M1031.43 813.69V1098.8C1031.43 1100.25 1032.54 1101.71 1034.76 1102.8C1037.3 1103.89 1040.03 1104.46 1042.79 1104.46C1045.55 1104.46 1048.28 1103.89 1050.82 1102.8C1053.03 1101.69 1054.14 1100.23 1054.14 1098.8V813.69H1031.43Z"
          fill="#E8E8E8"
        />
        <path
          d="M1042.79 819.37C1049.06 819.37 1054.14 816.827 1054.14 813.69C1054.14 810.553 1049.06 808.01 1042.79 808.01C1036.52 808.01 1031.44 810.553 1031.44 813.69C1031.44 816.827 1036.52 819.37 1042.79 819.37Z"
          fill="#F0F0F0"
        />
        <path
          d="M1347.2 964.33V1249.45C1347.2 1250.9 1348.31 1252.35 1350.52 1253.45C1353.05 1254.55 1355.79 1255.11 1358.55 1255.11C1361.31 1255.11 1364.05 1254.55 1366.58 1253.45C1368.8 1252.34 1369.91 1250.89 1369.91 1249.45V964.33H1347.2Z"
          fill="#CAD5DF"
        />
        <path
          d="M1358.55 970.01C1364.82 970.01 1369.9 967.467 1369.9 964.33C1369.9 961.193 1364.82 958.65 1358.55 958.65C1352.28 958.65 1347.2 961.193 1347.2 964.33C1347.2 967.467 1352.28 970.01 1358.55 970.01Z"
          fill="#E5EAEE"
        />
        <path d="M1347.2 1063.69L1050.72 914.88V866.92L1347.2 1015.73V1063.69Z" fill="#F7931E" />
        <path
          d="M744.48 659.22V951.34C744.48 952.79 745.59 954.25 747.81 955.34C750.343 956.438 753.074 957.005 755.835 957.005C758.596 957.005 761.327 956.438 763.86 955.34C766.08 954.24 767.19 952.78 767.19 951.34V659.22H744.48Z"
          fill="#CAD5DF"
        />
        <path
          d="M755.83 664.9C762.098 664.9 767.18 662.357 767.18 659.22C767.18 656.083 762.098 653.54 755.83 653.54C749.562 653.54 744.48 656.083 744.48 659.22C744.48 662.357 749.562 664.9 755.83 664.9Z"
          fill="#E5EAEE"
        />
        <path
          d="M1031.43 814V1099.12C1031.43 1100.57 1032.54 1102.02 1034.76 1103.12C1037.29 1104.21 1040.01 1104.77 1042.76 1104.77C1045.51 1104.77 1048.23 1104.21 1050.76 1103.12C1052.98 1102.01 1054.09 1100.56 1054.09 1099.12V814H1031.43Z"
          fill="#CAD5DF"
        />
        <path
          d="M1042.78 819.71C1049.05 819.71 1054.13 817.167 1054.13 814.03C1054.13 810.893 1049.05 808.35 1042.78 808.35C1036.51 808.35 1031.43 810.893 1031.43 814.03C1031.43 817.167 1036.51 819.71 1042.78 819.71Z"
          fill="#E5EAEE"
        />
        <path d="M1031.43 906.79L763.14 772.01V724.06L1031.43 858.83V906.79Z" fill="#F7931E" />
        <path
          d="M1710.63 657.14V942.25C1710.63 943.7 1711.73 945.16 1713.95 946.25C1716.48 947.348 1719.22 947.915 1721.98 947.915C1724.74 947.915 1727.48 947.348 1730.01 946.25C1732.23 945.15 1733.33 943.69 1733.33 942.25V657.14H1710.63Z"
          fill="#E8E8E8"
        />
        <path
          d="M1721.98 662.82C1728.25 662.82 1733.33 660.277 1733.33 657.14C1733.33 654.003 1728.25 651.46 1721.98 651.46C1715.71 651.46 1710.63 654.003 1710.63 657.14C1710.63 660.277 1715.71 662.82 1721.98 662.82Z"
          fill="#F0F0F0"
        />
        <path
          d="M1394.86 506.84V792C1394.86 793.45 1395.97 794.91 1398.19 796C1400.72 797.091 1403.44 797.654 1406.19 797.654C1408.94 797.654 1411.66 797.091 1414.19 796C1416.41 794.9 1417.52 793.44 1417.52 792V506.84H1394.86Z"
          fill="#E8E8E8"
        />
        <path
          d="M1406.21 512.52C1412.48 512.52 1417.56 509.977 1417.56 506.84C1417.56 503.703 1412.48 501.16 1406.21 501.16C1399.94 501.16 1394.86 503.703 1394.86 506.84C1394.86 509.977 1399.94 512.52 1406.21 512.52Z"
          fill="#F0F0F0"
        />
        <path
          d="M1710.63 657.48V942.6C1710.63 944.05 1711.73 945.5 1713.95 946.6C1716.48 947.698 1719.22 948.265 1721.98 948.265C1724.74 948.265 1727.48 947.698 1730.01 946.6C1732.23 945.49 1733.33 944.04 1733.33 942.6V657.48H1710.63Z"
          fill="#CAD5DF"
        />
        <path
          d="M1721.98 663.16C1728.25 663.16 1733.33 660.617 1733.33 657.48C1733.33 654.343 1728.25 651.8 1721.98 651.8C1715.71 651.8 1710.63 654.343 1710.63 657.48C1710.63 660.617 1715.71 663.16 1721.98 663.16Z"
          fill="#E5EAEE"
        />
        <path d="M1710.63 753.79L1417.57 606.93V561.17L1710.63 708.04V753.79Z" fill="#F7931E" />
        <path
          d="M1394.86 506.92V792C1394.86 793.46 1395.97 794.91 1398.18 796C1400.72 797.094 1403.45 797.658 1406.21 797.658C1408.97 797.658 1411.7 797.094 1414.24 796C1416.46 794.89 1417.57 793.44 1417.57 792V506.92H1394.86Z"
          fill="#CAD5DF"
        />
        <path
          d="M1406.21 512.6C1412.48 512.6 1417.56 510.057 1417.56 506.92C1417.56 503.783 1412.48 501.24 1406.21 501.24C1399.94 501.24 1394.86 503.783 1394.86 506.92C1394.86 510.057 1399.94 512.6 1406.21 512.6Z"
          fill="#E5EAEE"
        />
        <path d="M1394.86 597.48L1131.24 465.61V419.85L1394.86 551.72V597.48Z" fill="#F7931E" />
        <path
          d="M1097.66 481.82L961.61 414.55L963.04 222.46L1099.33 289.36L1097.66 481.82Z"
          fill={secondary}
        />
        <path
          d="M1058.25 430.8C1057.93 427.672 1056.48 424.768 1054.18 422.63L1053.81 422.24C1054.56 422.032 1055.3 421.771 1056.01 421.46C1059.14 419.82 1058.89 413.11 1057.31 409.77C1056.12 407.293 1054.29 405.182 1052 403.66C1047.57 400.6 1043.06 399.15 1038.57 397.83C1037.79 397.6 1037.43 398.02 1037.36 398.92C1037.36 399.23 1037.36 399.54 1037.36 399.86L1037.03 422.93C1037.03 426.11 1036.94 429.28 1036.91 432.47C1036.84 432.938 1036.92 433.417 1037.15 433.832C1037.38 434.246 1037.74 434.573 1038.18 434.76C1041.18 436.28 1044.18 437.83 1047.13 439.07C1048.81 439.725 1050.57 440.136 1052.36 440.29C1053.48 440.493 1054.64 440.285 1055.61 439.704C1056.59 439.124 1057.33 438.21 1057.69 437.13C1058.38 435.095 1058.57 432.924 1058.25 430.8V430.8ZM1041.17 414.31C1041.17 410.63 1041.28 406.95 1041.32 403.31C1041.32 402.88 1041.32 402.52 1041.85 402.75C1044.29 403.8 1046.74 404.75 1049.17 405.9C1050.08 406.371 1050.94 406.952 1051.71 407.63C1052.51 408.269 1053.17 409.072 1053.64 409.987C1054.1 410.901 1054.37 411.905 1054.41 412.93C1054.46 414.024 1054.4 415.12 1054.22 416.2C1053.86 418.2 1052.22 419.1 1050.03 418.51C1048.88 418.167 1047.75 417.763 1046.65 417.3C1044.9 416.59 1043.15 415.82 1041.4 415.08C1041.35 415.08 1041.31 415.02 1041.19 414.93C1041.07 414.84 1041.17 414.49 1041.17 414.31ZM1054.06 433.61C1054.01 434.024 1053.88 434.424 1053.66 434.779C1053.44 435.135 1053.15 435.438 1052.8 435.668C1052.45 435.898 1052.06 436.049 1051.64 436.109C1051.23 436.17 1050.81 436.14 1050.41 436.02C1048.75 435.688 1047.13 435.203 1045.56 434.57C1044.05 434 1042.56 433.18 1040.94 432.43L1041.14 418.77C1041.22 418.77 1041.26 418.71 1041.29 418.77C1044.29 420.1 1047.29 421.23 1050.18 422.83C1051.48 423.579 1052.55 424.667 1053.28 425.977C1054.01 427.287 1054.38 428.771 1054.33 430.27C1054.36 431.39 1054.27 432.51 1054.06 433.61V433.61Z"
          fill={primary}
        />
        <path
          d="M1012.43 419.93C1011.04 413.437 1009.65 406.953 1008.24 400.48C1007.09 395.16 1005.96 389.86 1004.75 384.56C1004.53 383.51 1004.07 382.524 1003.41 381.68C1002.75 380.837 1001.9 380.159 1000.93 379.7C998.99 378.75 997.37 378.79 996.4 380.42C996.136 380.913 995.935 381.437 995.8 381.98C993.713 388.86 991.633 395.727 989.56 402.58C988.89 404.77 988.22 406.95 987.56 409.14C987.29 410.02 987.56 410.54 988.47 410.96L989.47 411.38L990.02 411.63C991.33 412.2 991.41 412.16 991.78 410.89C992.62 408.04 993.49 405.18 994.31 402.3C994.45 401.79 994.67 401.69 995.21 401.92C998.43 403.34 1001.66 404.75 1004.89 406.07C1005.23 406.191 1005.53 406.409 1005.75 406.697C1005.96 406.985 1006.09 407.33 1006.12 407.69C1006.86 411.33 1007.68 414.99 1008.45 418.64C1008.48 419.004 1008.61 419.351 1008.83 419.641C1009.05 419.93 1009.36 420.149 1009.7 420.27C1010.27 420.47 1010.85 420.77 1011.43 421.02C1012.47 421.48 1012.71 421.23 1012.43 419.93ZM995.43 398.13C995.76 396.99 996.07 395.9 996.43 394.81C997.45 391.337 998.473 387.86 999.5 384.38C999.5 384.31 999.5 384.24 999.55 384.18C999.71 383.67 999.84 383.07 1000.55 383.37C1001.26 383.67 1001.33 384.37 1001.47 385C1001.78 386.42 1002.07 387.83 1002.37 389.25C1003.22 393.25 1004.07 397.233 1004.91 401.2C1004.97 401.52 1005.02 401.84 1005.08 402.2L995.43 398.13Z"
          fill={primary}
        />
        <path
          d="M1029.62 412.18L1019.56 407.5C1019.02 407.209 1018.57 406.776 1018.25 406.247C1017.94 405.719 1017.78 405.115 1017.78 404.5V403.99C1017.76 403.745 1017.8 403.498 1017.91 403.277C1018.01 403.055 1018.18 402.867 1018.39 402.735C1018.59 402.602 1018.83 402.529 1019.08 402.525C1019.33 402.521 1019.57 402.585 1019.78 402.71L1029.84 407.36C1030.38 407.652 1030.83 408.085 1031.15 408.614C1031.46 409.142 1031.62 409.746 1031.62 410.36V410.88C1031.65 411.126 1031.61 411.376 1031.5 411.601C1031.4 411.826 1031.23 412.016 1031.02 412.152C1030.82 412.287 1030.57 412.361 1030.33 412.366C1030.08 412.371 1029.83 412.307 1029.62 412.18V412.18Z"
          fill={primary}
        />
        <path
          d="M1064 325.72C1062 345.94 1044.17 360.8 1021.23 353.56C1012.34 350.719 1004.63 345.033 999.291 337.378C993.951 329.723 991.276 320.525 991.68 311.2C992.31 293.68 1004.84 273.84 1031.96 280.2C1056.37 286 1065.52 310 1064 325.72Z"
          fill={primary}
        />
        <path
          d="M963.04 222.41L966.57 221.11L1102.22 287.55L1099.33 289.32L963.04 222.41Z"
          fill="#3A3A3A"
        />
        <path
          d="M1097.66 481.82L1099.85 480.36L1102.22 287.55L1099.33 289.32L1097.66 481.82Z"
          fill="#262626"
        />
        <path
          fillRule="evenodd"
          clipRule="evenodd"
          d="M1028.26 338.29L1034.89 342.61L1034.79 339.27L1029.12 333.62C1029.25 332.308 1029.29 330.988 1029.23 329.67L1029.06 322.62L1046 332.68L1045.84 328.9L1038.24 322.33L1034.99 319.41L1028.86 313.69L1028.57 301.89C1028.55 300.262 1028.28 298.647 1027.77 297.1C1027.45 295.781 1026.66 294.625 1025.54 293.85C1024.7 293.43 1023.91 293.78 1023.4 294.93C1022.91 296.269 1022.7 297.697 1022.8 299.12L1023.03 311.22L1006.96 312.74V316.93L1023.18 320.2L1023.32 327.31C1023.33 328.705 1023.43 330.098 1023.61 331.48L1023.75 332.19L1018.38 333.19V336.68L1024.61 337.03V336.92L1025.41 340.92C1025.7 342.38 1027.33 342.92 1027.57 341.68L1028.26 338.29Z"
          fill="black"
        />
      </g>
      <defs>
        <linearGradient
          id={randomLinear}
          x1="379.62"
          y1="376.22"
          x2="1725.26"
          y2="1180.09"
          gradientUnits="userSpaceOnUse"
        >
          <stop stopColor="#009882" />
          <stop offset="1" stopColor="#01A891" stopOpacity="0" />
        </linearGradient>
        <linearGradient
          id={randomLinear2}
          x1="1194.65"
          y1="676.19"
          x2="1883.42"
          y2="1025.15"
          gradientUnits="userSpaceOnUse"
        >
          <stop stopColor="#BAC7D5" />
          <stop offset="0.04" stopColor="#BAC7D5" stopOpacity="0.96" />
          <stop offset="1" stopColor="#BAC7D5" stopOpacity="0" />
        </linearGradient>
        <linearGradient
          id={randomLinear3}
          x1="1367.86"
          y1="1160.68"
          x2="347.63"
          y2="626.98"
          gradientUnits="userSpaceOnUse"
        >
          <stop stopColor="#BAC7D5" stopOpacity="0" />
          <stop offset="0.5" stopColor="#BAC7D5" />
          <stop offset="1" stopColor="#BAC7D5" stopOpacity="0" />
        </linearGradient>
      </defs>
    </IllustrationWrapper>
  );
};

export default SmartPassV2;
